// 计算字符串字面量类型的长度

// 初始化一个空数组，每次从字符串中取出第一个放入, 最后返回数组的长度
type LengthOfString<S, K extends any[] = []> = S extends `${infer L}${infer R}` ? LengthOfString<R, [...K, L]> : K['length'];

type A = LengthOfString<"BFE.dev">; // 7
type B = LengthOfString<"">; // 0 
type C = LengthOfString<"string">; // 6
type D = LengthOfString<[]>; // 0

 

export { }
